package hongcaosp.app.android.user;

import hongcaosp.app.android.login.UserToken;
import hongcaosp.app.android.modle.DataCallBack;
import hongcaosp.app.android.modle.bean.IUserDetail;
import hongcaosp.app.android.modle.bean.UserInfoWrap;
import hongcaosp.app.android.modle.impl.UserModleImpl;
import hongcaosp.app.android.modle.mi.UserModle;
import xlj.lib.android.base.component.BasePresenter;
import xlj.lib.android.base.toastcompat.ToastManager;

public class UserDetailPresenter extends BasePresenter {

    private long userId;
    private IUserDetailView userView;
    private UserModle userModle;

    public UserDetailPresenter(IUserDetailView userView) {
        this.userView = userView;
        userModle = new UserModleImpl();
    }

    public void setUserId(long userId) {
        this.userId = userId;
    }

    public void getUserInfo() {
        userModle.userInfo((int) userId,UserToken.getDefault().getToken(), new DataCallBack<UserInfoWrap>() {
            @Override
            public void onGetData(UserInfoWrap data) {
                super.onGetData(data);
                if (UserToken.getDefault().isCurrentUser(userId)) {
                    UserToken.getDefault().updateUserInfo(data.getUserInfo());
                }
                userView.updateUserData(data.getUserInfo());
            }

            @Override
            public void onFail(int code, String errorMessage) {
                super.onFail(code, errorMessage);
                ToastManager.getInstance().showToast(errorMessage);
            }
        });
//        if (UserToken.getDefault().isCurrentUser(userId)) {
//            IUserDetail userDetail = UserToken.getDefault().getUser();
//            userView.updateUserData(userDetail);
//        } else {
//            userModle.userInfo((int) userId,UserToken.getDefault().getToken(), new DataCallBack<UserInfoWrap>() {
//                @Override
//                public void onGetData(UserInfoWrap data) {
//                    super.onGetData(data);
//                    userView.updateUserData(data.getUserInfo());
//                }
//
//                @Override
//                public void onFail(int code, String errorMessage) {
//                    super.onFail(code, errorMessage);
//                    ToastManager.getInstance().showToast(errorMessage);
//                }
//            });
//        }
    }
}
